
:focus {
	outline: 0 !important;
}


input[type="text"],
input[type="search"],
input[type="number"] {
	height: 2em;
	padding: .4em;
	border: .1em solid;
	border-radius: 0;
	font-size: inherit;
	text-overflow: ellipsis;
	box-shadow: 0 0 0 !important;
	-webkit-box-shadow: 0 0 0 !important;
	transition: none;

	.theme({
		.theme-color-and-background( @theme-input-color, @theme-input-background );
		.theme-mix( border-color, @theme-input-border-color, @theme-background );

		&:hover {
			.theme-mix( border-color, @theme-input-border-color-hover, @theme-background );
		}

		&:focus {
			.theme-mix( border-color, @theme-input-border-color-active, @theme-background );
		}

		&::-webkit-input-placeholder {
			.theme-mix-color( @theme-input-color-placeholder, @theme-input-background );
		}
	});

	&::-webkit-input-placeholder {
		font-style: italic;
	}

	&.form-control + .input-group-btn > .btn {
		min-width: 3em;
		height: 2em;
		border: 0;
		line-height: 1;
	}
}

input:disabled {
	-webkit-user-select: none;

	.theme({
		opacity: @theme-input-opacity-disabled;
	});

	&, & + .input-group-btn > button {
		cursor: default !important;
	}
}


.btn {
	padding: 0 @button-padding;
	border: @button-border-width solid;
	border-radius: 0;
	font-size: 1rem;
	line-height: 2;
	z-index: initial !important;
	transition: background .2s ease-out, border-color .2s ease-out;

	&,
	&.btn-primary { .btn-color( @color-primary ); }
	&.btn-success { .btn-color( @color-success ); }
	&.btn-danger  { .btn-color( @color-danger  ); }
	&.btn-neutral { .btn-color( @color-neutral ); }
	&.btn-info    { .btn-color( @color-info    ); }
	&.btn-hint    { .btn-color( @color-hint    ); }

	&:not(:disabled):active {
		box-shadow: none;
	}

	&:disabled {
		opacity: .5;
	}
}
